$(function() {
	//Ajax加载效果
	$(document).ajaxStart(function() { Pace.restart(); });

	//监控hash变化
	if( ("onhashchange" in window) && ((typeof document.documentMode==="undefined") || document.documentMode==8)) {
	    // 浏览器支持onhashchange事件
	    window.onhashchange = hashChangeFire;  // TODO，对应新的hash执行的操作函数
	} else {
	    // 不支持则用定时器检测的办法
	    setInterval(function() {
	        var ischanged = isHashChanged();  // TODO，检测hash值或其中某一段是否更改的函数
	        if(ischanged) {
	            hashChangeFire();  // TODO，对应新的hash执行的操作函数
	        }
	    }, 150);
	}

	//hash监控回调方法
	function hashChangeFire() {
		hashStr = window.location.hash;
		hashRequest();
	}

	//获取hash
	var hashStr = window.location.hash;
	var tmpHash = location.hash.replace("#","");
	if (tmpHash != "") {
		hashRequest();
	}

	//根据hash执行ajax请求
	function hashRequest() {
		if (hashStr != "") {
			tmpHash = location.hash.replace("#","");
			if (tmpHash != "") {
				loadpage(tmpHash);
			}
		} else {
			loadpage(tmpHash);
		}
	}

	$("[data-url]").each(function(){
		$(this).click(function(){
			//var funName = $(this).children().eq(1).text();
			//if (funName == "")
			//	funName = $(this).text();
			//loadpage($(this).attr('data-url'));
		});
	});

	//Ajax请求
	function loadpage(fUrl) {
		//处理菜单状态
		memuHandler();
		$.ajax({
		    type : "get",
		    url : 'admin/' + fUrl,
		    dataType :"html",
		    success: function(msg) { $('#content').html(msg); }
		});
	}

	//处理菜单状态
	function memuHandler() {
		//清除所有菜单激活状态
		clearMenuActive();

		//处理hash过长无法与菜单项匹配的问题
		var hashArr = tmpHash.split('/');
		var tmpStr = "";
		for (var i = 0; i < hashArr.length; i++) {
			if (i == 0)
				tmpStr += hashArr[i];
			else
				tmpStr += '/' + hashArr[i];

			// alert(tmpStr);
			tmpStr = tmpStr.split("?")[0];
			if ($("[data-url='" + tmpStr + "']").text() != "")
				tmpHash = tmpStr;
		}

		// alert(tmpHash);

		//获取点击的菜单名称
		var fName = $("[data-url='" + tmpHash + "']").children().eq(1).text();
		if (fName == "")
			fName = $("[data-url='" + tmpHash + "']").text();
		//获取上级菜单对象
		var pObj = $("[data-url='" + tmpHash + "']").parent().parent();
		var pName = "";
		var bStr = '<li><a href="admin"><i class="fa fa-bookmark"></i> 管理中心</a></li>';
		if ($(pObj).attr('class') == "sidebar-menu") {
			pObj = $("[data-url='" + tmpHash + "']");
		} else {
			pObj = $("[data-url='" + tmpHash + "']").parent().parent().parent();
			//获取上级菜单名称
			pName = $(pObj).children().eq(0).text();
			//设置父菜单为激活状态
			$(pObj).addClass('active');
		}
		//根据上级菜单名称、菜单名称添加面包屑html代码
		if (pName != "") {
			bStr += '<li class="active">' + pName + '</li>';
		}
		if (fName != "") {
			bStr += '<li class="active">' + fName + '</li>';
		}
		//设置功能名html
		$('.content-header h1').html(fName + "<small></small>");
		if (fName.trim() == "栏目管理")
			$('.content-header h1 small').html("最大支持三级栏目");
		//设置面包屑html
		$('.breadcrumb').html(bStr);
		//设置菜单为激活状态
		$("[data-url='" + tmpHash + "']").parent().addClass('active');
		$("[data-url='" + tmpHash + "']").parent().parent().addClass('menu-open');
		$("[data-url='" + tmpHash + "']").parent().parent().css("display", "block");
	}

	//清除所有菜单激活状态
	function clearMenuActive() {
		$("[data-url]").each(function(){
			$(this).parent().removeClass('active');
			$(this).parent().parent().parent().removeClass('active');
		});
	}

	$(window).resize(function () {
		layuiLayerLoad();
	});
});

function layuiLayerLoad() {
	// 处理加载层
	var left = ($(window).outerWidth())/2+$("#layui_layer").outerWidth();
	var top = ($(window).outerHeight()+50)/2-$("#layui_layer").outerHeight()*2;
	$("#layui_layer").css({
		left:left,
		top:top
	});
}

function close_layuiLayerLoad() {
	$("#layui_layer").hide();
	$("#layui-layer-shade").fadeOut();
}

function postMsg(url, data, fun) {
	// data = JSON.stringify(data);
	return $.ajax({
		type: "POST",
		//contentType: "application/json",
		url: url,
		data: data,
		// timeout: 15000, //超时时间：15秒
		dataType: 'json',
		error: function (XMLHttpRequest, textStatus, errorThrown) {
			netError();
			return;
		},
		complete: function (XMLHttpRequest, textStatus) {
			if (textStatus == "timeout") {
				netError();
				return;
			}
		},
		success: function (res) {
			if (!res || res == "") {
				netError();
				return;
			}
			fun(res);
		}
	});
}

var callback = null;
//分页信息条处理
function paging_handler(msg, n_id, i_id, fun) {
	callback = fun;
	var id = "paging";
	if (n_id != "" && n_id != null) {
		id = n_id;
	}
	var info_id = "info_data";
	if (i_id != "" && i_id != null) {
		info_id = i_id;
	}
	var content = '';
	content += '<li><a href="javascript:void(0);" onclick="showPage(' + msg.firstPage + ')">«</a></li>';
	for (var i = (msg.firstPage-1); i < msg.lastPage; i++) {
		content += '<li><a href="javascript:void(0);" ';
		if ((i+1) == msg.pageNum) {
			content += 'style="background-color:#eeeeee !important;border:1px solid #dddddd;">' + (i+1) + '</a></li>';
		} else {
			content += 'onclick="showPage(' + (i+1) + ')">' + (i+1) + '</a></li>';
		}
	}
	content += '<li><a href="javascript:void(0);" onclick="showPage(' + msg.lastPage + ')">»</a></li>';
	$('#'+id).html(content);
	$('#'+info_id).html('当前为 ' + msg.startRow + ' 至 ' + msg.endRow + ' 条数据，共 ' + msg.total + ' 条，每页 ' + msg.pageSize + ' 条');
}

function showPage(num) {
	if (null != callback) {
		window[callback](num);
	}
}

function copyUrl2(id, msg) {
	var Url2=document.getElementById(id);
	Url2.select(); // 选择对象
	document.execCommand("Copy"); // 执行浏览器复制命令
	alert(msg);
}

//显示LOAD图标
function showLoad() {
	$(".overlay").removeClass("hidden");
	$(".overlay").addClass("show");
}
//隐藏LOAD图标
function hideLoad() {
	$(".overlay").removeClass("show");
	$(".overlay").addClass("hidden");
}

//显示LOAD图标
function showLoadById(id) {
	$(id).removeClass("hidden");
	$(id).addClass("show");
}
//隐藏LOAD图标
function hideLoadById(id) {
	$(id).removeClass("show");
	$(id).addClass("hidden");
}